草庐IT

c++ - VC++ 2010 : Show open dialog hangs

全部标签

c++ - 链接到 Visual Studio 2010 中的静态库

要知道的事情:我非常确定我正在使用正确的静态库(包括dllexport和所有)生成的.lib文件非常大(3M、8M等)。共享的在300K-1M左右。所以我很确定.lib文件是静态的我想在单独的解决方案中链接到这些静态库文件这是一个非托管的C/C++项目我读到我需要使用新的UI(公共(public)属性>添加新引用等等)。但是为了让它起作用,我需要将整个项目添加到我的解决方案中。有没有办法将我的项目链接到静态库(不添加其源代码)。 最佳答案 “添加新引用”是一个.NET选项,用于添加程序集引用。您不能在.NET中创建静态链接库,程序集

c++ - C++ 中的奇怪编译器错误(VC 编译器)

对于这段代码,#includeintmain(){floatx=1.5f;floaty=0.0f;/*line6*/y=pow(x,6)*235809835.41-pow(x,5)*2110439254.2+pow(x,4)*7869448124.8-pow(x,3)*15648965509+pow(x,2)*17503313074-(x)*10440563329+2594694745‏;//error/*line7*/y=pow(x,6)*235809835.41-pow(x,5)*2110439254.2+pow(x,4)*7869448124.8-pow(x,3)*1564896

c++ - 如何指示 VC++ 编译器不内联常量?

我的C++程序中有以下全局常量:constintK=123456;当我编译程序时,生成的可执行文件在所有使用该值的地方(数十次)都包含文字值123456。但是,如果我删除const限定符,值123456在整个可执行文件中只出现一次(在.data部分).这是我正在寻找的结果。我希望值123456只出现一次,以便只需使用十六进制编辑器编辑.exe文件即可更改它。但是,我不想删除const限定符,因为我希望编译器防止我不小心修改源代码中的常量。是否可以指示编译器以某种方式不内联所述常量的值?我需要这样做的原因是,可执行文件很容易被负责“破解”示例程序以改变其行为的学生修改。对于没有经验的人来

c++ - STL operator= Visual Studio 2010 的行为发生变化?

我正在尝试使用VisualStudio2010(C++)编译QtScriptGenerator(gitorious),但遇到了编译错误。在寻找解决方案的过程中,我偶尔会看到自VS2008以来由于VS2010的STL实现的变化和/或c++0x一致性变化而引入的编译破损。知道下面发生了什么,或者我该如何解决它?如果有问题的代码似乎是QtScriptGenerator的,我想我会更容易修复它。但在我看来,有问题的代码可能在VS2010的STL实现中,我可能需要创建一个解决方法?附言。我对模板和STL很陌生。我有嵌入式和控制台项目的背景,这些项目直到最近才经常被避免以减少内存消耗和交叉编译器风

c++ - Visual Studio 2010 中的多进程构建 : Worth it?

我已经开始使用VS2010测试我们的C++软件,构建时间非常糟糕(30-45分钟,大约是VS2005时间的两倍)。我一直在阅读有关多进程编译的/MP开关。不幸的是,它与我们经常使用的一些功能不兼容,例如#import、增量编译和预编译header。您是否有一个类似的项目,您在关闭预编译头文件之类的东西后尝试了/MP开关?您获得更快的构建了吗?我的机器在具有4GBRAM和快速SSD存储的4核机器上运行64位Windows7。病毒扫描程序已禁用,软件环境非常简单。编辑:Martin和jdehaan指出MP与预编译header并非不兼容。详情为here. 最佳答案

c++ - 如何将自定义生成目标添加到 Visual C++ 2010 项目?

有很多指南可以帮助您在VS2010中使用MSBuild模仿VS2008的“自定义生成步骤”。但是,我希望我的构建更智能并利用MSBuild。我写了alittleMSBuildtask它调用ANTLR解析器生成器。当我在一个简单的测试MSBuild文件中运行该构建任务时,它可以完美运行。但是,当我尝试将我的任务添加到C++项目时,我遇到了问题。本质上我已经将它添加到我的项目文件的顶部(在元素之后):但是,我的目标在构建之前没有被调用。如何将我的任务添加到C++构建中? 最佳答案 在阅读此答案之前,您可能希望了解:General.vcx

c++ - Visual C++ 2010,右值引用错误?

这是VisualC++2010中的错误还是正确的行为?templateTf(Tconst&r){returnr;}templateTf(T&&r){static_assert(false,"noway");//我想,函数f(T&&)永远不应该被调用,但它是用T=int&调用的。输出:main.cpp(10):errorC2338:nowaymain.cpp(17):seereferencetofunctiontemplateinstantiation'Tf(T)'beingcompiledwith[T=int&]Update1DoyouknowanyC++x0compilerasare

c++ - Visual Studio 2010 中的 boost::thread 编译错误

我在很长一段时间内第一次尝试使用boost,当我包含boost/thread.hppheader时,我在boost本身内部遇到编译错误:c:\myproj\boost_1_46_0\boost\thread\win32\thread_heap_alloc.hpp(97):errorC2061:syntaxerror:identifier'heap_memoryc:\myproj\boost_1_46_0\boost\thread\detail\thread.hpp(134):seereferencetofunctiontemplateinstantiation'T*boost::det

c++ - Visual Studio 2010 不显示局部变量的调试信息

VisualStudio2010不显示局部变量的调试信息。不过,我可以毫无问题地查看我的类变量。是否缺少某些设置?这是一个“调试”版本。我尝试转到项目属性->C++->优化并禁用所有优化。 最佳答案 这会有所帮助。http://support.microsoft.com/kb/2452649这是主条目http://social.msdn.microsoft.com/Forums/en/vsdebug/thread/6133b9d0-81c6-4e30-bfe5-5b3d6e104300

c++ - VS2005、VS2008下C++生成的EXE速度; VS2010编译器

当我从VS6升级到VS2005时,我发现在默认编译设置下我的国际象棋引擎程序的速度提高了10%。想知道一般情况下是否也是如此,以及从那时起对MSC++编译器的最终输出进行了哪些改进(如果有的话)。 最佳答案 关于从2010之前的VC++版本迁移到VC++2010+:如果您大量使用STL容器和算法,升级到VC++2010+可能会提供显着超过10%的改进,因为VC++2010+实现了C++11的移动语义。我记得关于Boost的一个特定帖子声称从VC++2008迁移到VC++2010后,他们的应用程序性能提高了900%的邮件列表:[boo